package com.raymond.utils;

import lombok.Data;

/**
 * 返回结果集
 *
 * @author :  raymond
 * @version :  1.0
 * @date :  2019/7/16
 */
@Data
public class Result {
    /**
     * 状态
     */
    private String code;
    /**
     * 信息
     */
    private String message;
    /**
     * 数据
     */
    private Object data;

    /**
     * 默认值
     * status:000
     * message:成功
     */
    public Result() {
        this(ErrorCode.SUCCESS_CODE, null);
    }

    /**
     * 默认值
     * status:000
     * message:成功
     * @param code 错误码
     */
    public Result(String code) {
        this(code, null);
    }

    /**
     * 默认值
     * status:000
     * message:成功
     * @param data 传输的数据
     */
    public Result(Object data) {
        this(ErrorCode.SUCCESS_CODE, data);
    }

    /**
     * @param code 状态
     * @param data 数据
     */
    private Result(String code, Object data) {
        this.code = code;
        this.message = ErrorCode.CODE_MAP.get(code);
        this.data = data;
    }


    public void errorMessage(String code){
        this.code = code;
        this.message = ErrorCode.CODE_MAP.get(code);
    }
}
